package com.yugao.fintech.antelope.system.model.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yugao.fintech.antelope.base.model.BasePlusPO;
import com.yugao.fintech.antelope.base.tenant.core.DataIsolation;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 职务表

 */
@Getter
@Setter
@ToString
@TableName("sys_position")
@DataIsolation(filterTenant = true, tableName = "sys_position")
public class SysPosition extends BasePlusPO {

    public static LambdaQueryWrapper<SysPosition> lqw() {
        return Wrappers.lambdaQuery();
    }

    /**
     * id
     */
    @TableId
    private Long id;
    /**
     * 职务编码
     */
    private String code;
    /**
     * 职务名称
     */
    private String name;

    /**
     * 职级, 数据库特殊字段, 需要做处理, 在查询的时候会自动加上 `rank`
     */
    @TableField(value = "`rank`")
    private String rank;

    /**
     * 公司id
     */
    private String companyId;

    /**
     * 组织机构编码
     */
    private String orgCode;
}
